#!/usr/bin/env python
PACKAGE = "autopnp_dirt_detection"

import roslib;roslib.load_manifest(PACKAGE)

from dynamic_reconfigure.parameter_generator import *

gen = ParameterGenerator()

gen.add("dirtThreshold", double_t, 0, "dirt threshold (in [0,1])", .2, 0., 1.)
gen.add("detectionHistoryDepth", int_t, 0, "number of time steps used for the detection history logging", 30, 1, 10000)
gen.add("warpImage", bool_t, 0, "if true, image warping to a bird's eye perspective is enabled", True)
gen.add("birdEyeResolution", double_t, 0, "resolution for bird eye's perspective [pixel/m]", 300., 1., 1200.)
gen.add("maxDistanceToCamera", double_t, 0, "only those points which are close enough to the camera are displayed in the bird's eye view [max distance in m]", 3., 1., 20.)
gen.add("removeLines", bool_t, 0, "if true, strong lines in the image will not produce dirt responses", True)
gen.add("floorSearchIterations", int_t, 0, "the number of attempts to segment the floor plane in the image", 3, 1, 100)
gen.add("minPlanePoints", int_t, 0, "minimum number of points that are necessary to find the floor plane", 100, 10, 1000000)


#gen.add("int_param", int_t, 0, "An Integer parameter", 50, 0, 100)
#gen.add("double_param", double_t, 0, "A double parameter", .5, 0, 1)
#gen.add("str_param", str_t, 0, "A string parameter", "Hello World")
#gen.add("bool_param", bool_t, 0, "A Boolean parameter", True)

#size_enum = gen.enum([ gen.const("Small", int_t, 0, "A small constant"),
#                  gen.const("Medium", int_t, 1, "A medium constant"),
#                  gen.const("Large", int_t, 2, "A large constant"),
#                  gen.const("ExtraLarge", int_t, 3, "An extra large constant") ],
#                  "An enum to set size")

#gen.add("size", int_t, 0, "A size parameter which is edited via an enum", 1, 0, 3, edit_method=size_enum)

exit(gen.generate(PACKAGE, "autopnp_dirt_detection", "DirtDetection"))
